/*
 ============================================================================
 Name        : selection_sort.c
 Author      : Yineng Chen
 Version     : 1.0
 Time        : 2011-10-04
 Description : Selection sort
 ============================================================================
 */

#include <stdio.h>

void selection_sort(int data[],int length)
{
	int i=0,j=0;
	int minIndex=0;
	for(i=0;i<length-1;++i)
	{
		for(j=i+1,minIndex=i;j<length;++j)
		{
			if(data[minIndex]>data[j])
			{
				minIndex=j;
			}
		}
		data[minIndex]=data[minIndex]^data[i];
		data[i]=data[minIndex]^data[i];
		data[minIndex]=data[minIndex]^data[i];
	}
}

int main(void)
{
	printf("selection_sort\n");
	int i=0;
	int a[10]={6,35,7,9,1,2,7,43,8,3};
	selection_sort(a,10);

	for(i=0;i<10;++i)
	{
		printf("%d ",a[i]);
	}
	return 0;
}
